Visual Metaphors for Understanding Logic Program Execution
نویسندگان
چکیده
A classic notion in logic programming is the separation of logic and control. Logic is for problem solving; control is for directing inference. However, practical experience in the classroom suggests that problem-solving students nonetheless devote much eeort to understanding control issues such as eliminating looping behaviours and improving program eeciency. In the case of Prolog, this requires a clear understanding of the operation of both uniication and backtracking. Students often try to get this understand by tracing executions, but the common four-port debugger used in Prolog is not as helpful as it could be. In particular, it provides information in low bandwidth textual form. This paper describes a new visualization system for logic programming that uses colour tagging to trace uniication through the Prolog proof tree. A user can dynamically \tag" a term or subterm with a colour that is immediately propagrated through the displayed tree. The colour is also propagated through the proof tree on subsequent execution steps. This \colour uniication" has an interesting relationship with usual Prolog uniication. Initial experiences reveal several interesting visual metaphors that assist understanding of logic program execution. Experience to date also suggests new directions for visualization of logic programs.
منابع مشابه
Visual Metaphors fro Understanding Logic Program Execution
A classic notion in logic programming is the sep aration of logic and control Logic is for problem solving control is for directing inference However practical experience in the classroom suggests that problem solving students nonetheless devote much e ort to understanding control issues such as elim inating looping behaviours and improving program e ciency In the case of Prolog this requires a...
متن کاملAnimation of tile-based games automatically derived from simulation specifications
Visual Languages (VLs) are beneficial particularly for domainspecific applications, since they can support ease of understanding by visual metaphors. If such a language has an execution semantics, comprehension of program execution may be supported by direct visualization. This closes the gap between program depiction and execution. To rapidly develop a VL with execution semantics a generator f...
متن کاملInterim report on the Visualisation of Prolog execution in three dimensions
ABSTRACT A simple, expressively complete, prototype system is presented for visual programming in Prolog, and for the complete visualisation of the execution of Prolog programs in three spatial dimensions. The first part of this system, known as VPP (short for Visual Programming in Prolog) enables users to edit and create Prolog programs graphically by manipulating and connecting graphical symb...
متن کاملPP: Visual Programming System for Parallel Logic Programming Language GHC
Though parallel logic languages have lots of good features, the readability of those languages are not good enough. Therefore, we have developed visual programming system PP for parallel logic language GHC. Each de nition clause of GHC program is expressed as a gure along with its textual representation. The system graphically assists the program input and its execution. The system has actually...
متن کاملPreconceptions and Individual Differences in Understanding Visual Metaphors
Understanding information visualization is more than a matter of reading a series of data values; it is also a matter of incorporating a visual structure into one’s own thinking about a problem. We have proposed visual metaphors as a framework for understanding high-level visual structure and its effect on visualization use. Although there is some evidence that visual metaphors can affect visua...
متن کامل